#include "Evento.h"

Evento::Evento(uint64_t instante){
     tiempo = instante;
}

uint64_t Evento::getTiempo(){ return tiempo; }

EventoAdvance::EventoAdvance(uint64_t instante, \
			     Transaccion* transaccion	\
                             ):Evento::Evento(instante){
     this->transaccion = transaccion;
}

void EventoAdvance::ejecutar(){
     /* pongo la transaccion en la CEC */
     Sistema::getInstancia().ponerEnCEC(transaccion);
}

EventoGenerate::EventoGenerate(uint64_t instante):Evento::Evento(instante){
     /* pongo una nueva transaccion en la CEC */
     Sistema::getInstancia().ponerEnCEC(new Transaccion());
     /* y un nuevo evento del tipo GENERATE en la FEC */
     //TODO: definir el calculo del tiempo
     Sistema::getInstancia().ponerEnFEC(new EventoGenerate(1));
}

void EventoGenerate::ejecutar(){

}
